﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ProjectDirector.Domain.Entities;

namespace ProjectDirector.Domain.Abstracts
{
    public interface IProjectDirectorRepository
    {
        List<Country> GetCountries();
        List<JobTitle> GetJobTitles();
        List<ContractType> GetContractTypes();
        List<BusinessType> GetBusinessTypes();
        List<Title> GetTitles();
        IQueryable<Employee> GetEmployees();
        IQueryable<Address> GetAddress();
        IQueryable<Customer> GetCustomers();

        int AddCustomer(Customer customer, Address address);
        int AddEmployee(Employee employee, Address address);
        int UpdateEmployee(Employee employee);
        int AddContact(Contact contact);
        int UpdateAddress(Address address);

        int DeleteEmployee(Employee employee);

        int DeleteCustomer(Customer _customer);

        int UpdateCustomer(Customer _customer, Address _address);

        List<Contact> GetContactsByCustomer(int id);
    }
}
